/**
*
*/
package icy.gui.sequence.tools;
import icy.image.IcyBufferedImageUtil.FilterType;
import icy.sequence.Sequence;
import java.awt.GridBagConstraints;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
/**
* @author Stephane
*/
public class SequenceResizePanel extends SequenceBaseResizePanel
{
/**
*
*/
private static final long serialVersionUID = 5366610917009978874L;
private JComboBox filterComboBox;
private JLabel lblFilterType;
public SequenceResizePanel(Sequence sequence)
{
super(sequence);
keepRatioCheckBox.setSelected(true);
filterComboBox.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
updatePreview();
}
});
}
@Override
protected void initialize()
{
super.initialize();
lblFilterType = new JLabel("Filter type");
GridBagConstraints gbc_lblFilterType = new GridBagConstraints();
gbc_lblFilterType.fill = GridBagConstraints.BOTH;
gbc_lblFilterType.insets = new Insets(0, 0, 5, 5);
gbc_lblFilterType.gridx = 5;
gbc_lblFilterType.gridy = 0;
settingPanel.add(lblFilterType, gbc_lblFilterType);
filterComboBox = new JComboBox();
filterComboBox.setModel(new DefaultComboBoxModel(new String[] {"Nearest", "Bilinear", "Bicubic"}));
filterComboBox.setSelectedIndex(1);
GridBagConstraints gbc_filterComboBox = new GridBagConstraints();
gbc_filterComboBox.insets = new Insets(0, 0, 5, 5);
gbc_filterComboBox.fill = GridBagConstraints.HORIZONTAL;
gbc_filterComboBox.gridx = 5;
gbc_filterComboBox.gridy = 1;
settingPanel.add(filterComboBox, gbc_filterComboBox);
}
@Override
public FilterType getFilterType()
{
switch (filterComboBox.getSelectedIndex())
{
default:
case 0:
return FilterType.NEAREST;
case 1:
return FilterType.BILINEAR;
case 2:
return FilterType.BICUBIC;
}
}
@Override
public boolean getResizeContent()
{
return true;
}
@Override
public int getXAlign()
{
return SwingConstants.CENTER;
}
@Override
public int getYAlign()
{
return SwingConstants.CENTER;
}
}